// 切换登录和注册的盒子
// 去注册
$('#showReg').on('click', function () {
    $('.reg-form').show()
    $('.login-form').hide()
})
// 去登录
$('#showLogin').on('click', function () {
    $('.reg-form').hide()
    $('.login-form').show()
})

// 密码验证的位置
let form = layui.form
form.verify({

    //我们既支持上述函数式的方式，也支持下述数组的形式
    //数组的两个值分别代表：[正则匹配、匹配不符时的提示文字]
    pass: [
        /^[\S]{6,12}$/
        , '密码必须6到12位，且不能出现空格'
    ],
    // 两次密码进行验证
    repwd: function (value) {
        // console.log($('#pwdIput').val(), value);
        if ($('#pwdIput').val() !== value) {
            return '两次密码不一致，请重新输入'
        }
    }
});

// 注册功能
let layer = layui.layer;
$('.reg-form').submit(function (e) {
    // 阻止表单的默认行为
    e.preventDefault();
    // console.log($(this).serialize());
    // 获取表单中的数据 ==> serialize是根据表单各项的name属性获取值的，所以要检查表单各项的name属性
    const data = $(this).serialize()
    // 发送ajax请求
    axios.post('/api/reguser', data).then(function ({ data }) {
        // console.log(data);
        if (data.status !== 0) {
            // 注册失败
            return layer.msg(data.message);
        }
        // 注册成功
        layer.msg(`恭喜你，${data.message}`)
        $('.reg-form')[0].reset()
        // 显示登录界面
        $('#showLogin').click()
    })
});

//登录功能
$('.login-form').on('submit', function (e) {
    e.preventDefault();
    const data = $(this).serialize()
    axios.post('/api/login', data).then(function ({ data }) {
        if (data.status !== 0) {
            // 登录失败
            return layer.msg(`${data.message}，用户名或密码错误`)
        }
        // 登录成功
        // 使用本地存储来存储token
        localStorage.setItem('token', data.token)

        layer.msg(`${data.message}，即将跳转到首页`, {
            icon: 1,
            time: 2000 //2秒关闭（如果不配置，默认是3秒）
        }, function () {
            //do something
            // 跳转到后台主页
            location.href = '/index.html'
        });
    })
})
